package com.xlh.wjdcserver.mapper;

import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.property.dto.QAsignmentDTO;
import com.property.dto.QuestionnairePubDTO;
import com.property.entity.Questionnaire;
import com.property.vo.QuestionnaireAnalysisVO;
import com.property.vo.QuestionnairePageVO;
import org.apache.ibatis.annotations.Insert;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
import org.apache.ibatis.annotations.Select;

import java.util.List;

@Mapper
public interface QuestionnaireMapper extends BaseMapper<Questionnaire> {

    @Select("select * from t_questionnaire where delete_flag = '0' order by create_time desc")
    Page<QuestionnairePageVO> page(Page<QuestionnairePageVO> page, QueryWrapper<QuestionnairePageVO> queryWrapper);


    void asignQuestionnaire(QuestionnairePubDTO questionnairePubDTO);

    @Insert("update q_comp set end_time = #{endTime}, update_time = now() where q_id = #{id}")
    void updateAsign(Questionnaire questionnaire);

    List<QuestionnaireAnalysisVO> questionnaireAnalysis(@Param("ew") QueryWrapper<QuestionnaireAnalysisVO> queryWrapper);
}
